#ifndef __QUEUE_H__
#define __QUEUE_H__

#include "Common.h"
#include "Object.h"


NAME_SPACE_BEGIN

template < typename T >
class Queue : public Object
{
public:
	virtual void add(const T& e) = 0;
	virtual void remove() = 0;
	virtual T front() const = 0;
	virtual void clear() = 0;
	virtual int length() const = 0;
};


NAME_SPACE_END
#endif